Lapo Calamandrei [Wed, 2 Mar 2016 22:07:37 +0000 (23:07 +0100)]
Adwaita: more scale style fixes
Руслан Ижбулатов [Tue, 23 Feb 2016 09:20:55 +0000 (09:20 +0000)]
GDK W32: Use layered windows
Toplevels are now true layered windows that are moved,
resized and repainted via UpdateLayeredWindow() API call.
This achieves transparency without any extra effort,
and prevents window size and window contents desychronization
(bug 761629).
This also changes the way CSD windows are detected. We now
use window decorations to detect CSDiness of a window,
and to decide whether a window should be layered (CSD windows should
be) or not.
Decorations are now stored in the window implementation,
not as a quark-based property of the window-as-gobject.
https://bugzilla.gnome.org/show_bug.cgi?id=748872
Руслан Ижбулатов [Sat, 6 Feb 2016 12:06:41 +0000 (12:06 +0000)]
GDK W32: custom (non-WM) drag-move and drag-resize code
Normally works only on CSD windows, non-CSD windows continue
to use WM modal loop for drag-resizing and drag-moving. However,
if it is activated on non-CSD windows, it does work.
Has the advantage of being completely immune to AeroSnap.
AeroSnap only worked partially on CSD windows, with the only part
that worked being "don't let users drag window titlebar outside of
the desktop". Now AeroSnap doesn't work on windows moved by
this code at all, which is good, since they currently don't work
well with it due to the way shadows are drawn.
It's possible to also re-implement AeroSnap (or something similar),
but that is a story for another commit.
This code was originally intended to fix the problem of window
size and window contents desynchronization, but failed to achieve
that result in the end. Nevertheless, it serves as a foundation for
other changes to the way window resizing works.
https://bugzilla.gnome.org/show_bug.cgi?id=761629
Lapo Calamandrei [Wed, 2 Mar 2016 20:47:24 +0000 (21:47 +0100)]
Adwaita: fix scale with marks size
Daniel Mustieles [Wed, 2 Mar 2016 20:36:59 +0000 (21:36 +0100)]
Updated Spanish translation
Lapo Calamandrei [Wed, 2 Mar 2016 20:34:03 +0000 (21:34 +0100)]
Adwaita: scale with marks style fixes
after GtkRange gadgettification the theme needs some adjustments
for the new widget structure.
Matthias Clasen [Wed, 2 Mar 2016 20:20:47 +0000 (15:20 -0500)]
combobox: Correct the CSS node docs
The box was somehow overlooked in the diagrams.
Matthias Clasen [Wed, 2 Mar 2016 20:20:31 +0000 (15:20 -0500)]
Add a css node test for comboboxes
Lapo Calamandrei [Wed, 2 Mar 2016 19:55:19 +0000 (20:55 +0100)]
Adwaita: fix combos styling
since now the combobox childrens are in a box.
Cosimo Cecchi [Wed, 2 Mar 2016 19:16:39 +0000 (11:16 -0800)]
scale: don't add scale label for empty markup
This is a regression from the gadget port.
Aurimas Černius [Wed, 2 Mar 2016 18:42:40 +0000 (20:42 +0200)]
Updated Lithuanian translation
Ray Strode [Thu, 25 Feb 2016 18:58:42 +0000 (13:58 -0500)]
wayland: synchronize key repeat with server
key repeat is handled client side, which means stalls in the compositor
dispatching key release events can lead to fictious repeat events.
This commit ties key repeat to a server roundtrip to ensure the client
and server are in sync.
https://bugzilla.gnome.org/show_bug.cgi?id=757942
Ray Strode [Tue, 1 Mar 2016 13:49:27 +0000 (08:49 -0500)]
wayland: handle key up events earlier in deliver_key_event
We don't need the key repeat rate or anything like that when
handling key up events, so do key up events first before querying
for that information.
https://bugzilla.gnome.org/show_bug.cgi?id=757942
Ray Strode [Tue, 1 Mar 2016 13:29:31 +0000 (08:29 -0500)]
wayland: make deliver_key_event return void
deliver_key_event is sometimes called from a timeout handler and
sometimes called directly. We currently erroneously return TRUE
(G_SOURCE_CONTINUE) in the case where it's called directly, but to
no ill effect, since we ignore that return value. In the future,
we're going to need to call it directly in other parts of the code
where the return value would be relevant and handling TRUE, would
require adding redundant code.
Instead, this commit just changes the code to always reset the timer
manually, and never rely on glib's ability to automatically reset
the timer by returning TRUE. This makes the code smaller, too, since
there's less special casing required.
https://bugzilla.gnome.org/show_bug.cgi?id=757942
Benjamin Otte [Wed, 2 Mar 2016 13:48:43 +0000 (14:48 +0100)]
win32 theme: Add a naive switch implementation
I couldn't come up with anything better than a button on a button.
But the Windows theme sucks...
Benjamin Otte [Wed, 2 Mar 2016 06:51:54 +0000 (07:51 +0100)]
win32 theme: Implement horizontal spinbuttons
Benjamin Otte [Tue, 1 Mar 2016 18:14:30 +0000 (19:14 +0100)]
combobox: Put child into box
Put the combobox child into the box we added for this purpose. That way,
we don't have to maintain the child's position ourselves anymore.
Benjamin Otte [Tue, 1 Mar 2016 17:34:43 +0000 (18:34 +0100)]
container: Remove check
The check is not working for many containers anymore as they are not the
direct parents of their children. We want to allow this behavior in more
places.
Benjamin Otte [Tue, 1 Mar 2016 17:29:22 +0000 (18:29 +0100)]
combobox: Put the button in a box
This is so we can put the entry into the box in the next commit.
Benjamin Otte [Tue, 1 Mar 2016 17:19:44 +0000 (18:19 +0100)]
combobox: Make sure the cellview expands
Windows theme needs the expansion for correct drawing of the focus
outline.
Benjamin Otte [Tue, 1 Mar 2016 16:39:47 +0000 (17:39 +0100)]
combobox: Ensure an entry gets created for has_entry combos
Previously add/remove on the combobox would result in a cellview being
created.
Fran Dieguez [Wed, 2 Mar 2016 09:46:21 +0000 (09:46 +0000)]
Updated Galician translation
Rico Tzschichholz [Wed, 2 Mar 2016 09:23:10 +0000 (10:23 +0100)]
mir: display->list_devices vfunc was dropped
See
4a6f8a065abace71c0ca32d959ec9b86628bffaa
https://bugzilla.gnome.org/show_bug.cgi?id=762891
Chun-wei Fan [Wed, 2 Mar 2016 08:53:27 +0000 (16:53 +0800)]
Fix last commit
We need to drop the reference to it in configure.ac as well...
Chun-wei Fan [Wed, 2 Mar 2016 08:49:59 +0000 (16:49 +0800)]
MSVC build: Drop crypt implementation for MSVC
We are actually not using the crypt() in GDK-Broadway for quite a while,
so the code implementation for MSVC is actually not used. So, it's time
to get rid of this.
Yosef Or Boczko [Wed, 2 Mar 2016 07:39:24 +0000 (09:39 +0200)]
Updated Hebrew translation
Yosef Or Boczko [Wed, 2 Mar 2016 07:37:20 +0000 (09:37 +0200)]
Updated Hebrew translation
Chun-wei Fan [Wed, 2 Mar 2016 05:02:30 +0000 (13:02 +0800)]
MSVC builds: Re-arrange include paths
Search also for the headers in include/gio-win32-2.0, as gio.h will
include those headers at some point, and arrange the include paths in a
dependency hierarchy style, top-to-down.
Matthias Clasen [Wed, 2 Mar 2016 03:37:06 +0000 (22:37 -0500)]
3.19.11
Matthias Clasen [Wed, 2 Mar 2016 04:21:55 +0000 (23:21 -0500)]
css node tests: Update notebook results
This is fallout from changing the tab states.
Olivier Fourdan [Mon, 29 Feb 2016 09:14:56 +0000 (10:14 +0100)]
wayland: Check actual impl type in transient loop
If the parent of a transient is not a native Wayland window (e.g.
offscreen window), the transient loop check will crash.
Check for the actual type in the transient loop check and do not assume
the parent is necessarily Wayland native.
bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=761156
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Jonas Ådahl [Fri, 26 Feb 2016 06:10:06 +0000 (14:10 +0800)]
gdk: Compress window state events
If there are already a window state event for a given window queued
when the window state is changed, drop that event and queue a new event
with a changed_mask based on the state before last event that was queue
without compression.
https://bugzilla.gnome.org/show_bug.cgi?id=762468
Matthias Clasen [Tue, 1 Mar 2016 21:00:30 +0000 (16:00 -0500)]
progressbar: Don't leave css nodes behind
We create and destroy gadgets inside the hierarchy here,
and if we don't explicitly remove their CSS nodes from the parent,
they stick around.
Matthias Clasen [Tue, 1 Mar 2016 20:57:36 +0000 (15:57 -0500)]
scale: Don't leave css nodes behind
We create and destroy gadgets inside the scale hierarchy here,
and if we don't explicitly remove their CSS nodes from the parent,
they stick around.
Cosimo Cecchi [Tue, 1 Mar 2016 20:53:44 +0000 (12:53 -0800)]
Adwaita: fix outline for scale trough
Matthias Clasen [Tue, 1 Mar 2016 20:48:01 +0000 (15:48 -0500)]
range: Don't leave css nodes behind
We create and destroy gadgets inside the range hierarchy here,
and if we don't explicitly remove their CSS nodes from the parent,
they stick around.
Matthias Clasen [Tue, 1 Mar 2016 20:35:32 +0000 (15:35 -0500)]
level bar: Don't leave css nodes behind
We create and destroy gadgets inside the levelbar hierarchy here,
and if we don't explicitly remove their CSS nodes from the parent,
they stick around.
Matthias Clasen [Tue, 1 Mar 2016 20:18:34 +0000 (15:18 -0500)]
cell renderer: Strip out :drop(active) state
It does not make sense to render every cell in a treeview as
drop target, even when the treeview itself is set as a drop destination.
https://bugzilla.gnome.org/show_bug.cgi?id=761686
Matthias Clasen [Tue, 1 Mar 2016 20:09:10 +0000 (15:09 -0500)]
Updates
Matthias Clasen [Tue, 1 Mar 2016 12:58:12 +0000 (07:58 -0500)]
Take a reference on the im context for async ops
This might fix the crash in yelp that some people continue
to see.
https://bugzilla.gnome.org/show_bug.cgi?id=762887
Olivier Fourdan [Fri, 26 Feb 2016 12:35:35 +0000 (13:35 +0100)]
wayland: Restore size when configure size is 0x0
According to xdg_shell, an xdg_surface.configure with size 0x0 should
be interpreted as that it is up to the client to set a size.
When transitioning from maximize or fullscreen state, this means the
client should configure its size back to what it was before being
maximize or fullscreen.
This problem currently only occurs on weston because weston sends a
configure with size 0x0 when transitioning back from maximize or
fullscreen.
bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=762713
Anders Jonsson [Tue, 1 Mar 2016 09:13:42 +0000 (09:13 +0000)]
Updated Swedish translation
Benjamin Otte [Mon, 29 Feb 2016 22:17:00 +0000 (23:17 +0100)]
notebook: Tell everyone we reordered stuff
Fixes keybindings for reordering actually emitting signals and properly
updating CSS/the screen.
Benjamin Otte [Mon, 29 Feb 2016 20:57:19 +0000 (21:57 +0100)]
notebook: Reallocate tab gadgets when we reorder them
Otherwise they stay in their position and don't cause a redraw. Which
really confuses Epiphany users apparently.
https://bugzilla.gnome.org/show_bug.cgi?id=762720
Paolo Borelli [Mon, 29 Feb 2016 20:45:13 +0000 (21:45 +0100)]
gdk: implement gdk_display_list_devices using GdkSeat
Now that the function is factored out in a single place, we can
refactor it to not use deprecated API.
Paolo Borelli [Mon, 29 Feb 2016 19:59:36 +0000 (20:59 +0100)]
gdk: remove the display->list_devices vfunc
gdk_display_list_devices is deprecated and all the backends
implement the same fallback by delegating to the device manager
and caching the list (caching it is needed since the method does
not transfer ownership of the container).
The compat code can be shared among all backends and we can
initialize the list lazily only in the case someone calls the
deprecated method.
https://bugzilla.gnome.org/show_bug.cgi?id=762891
Cosimo Cecchi [Mon, 29 Feb 2016 20:53:08 +0000 (12:53 -0800)]
range: fix fill level for vertical inverted scales
Cosimo Cecchi [Mon, 29 Feb 2016 18:43:12 +0000 (10:43 -0800)]
Update CSS nodes documentation
Cosimo Cecchi [Mon, 29 Feb 2016 05:13:54 +0000 (21:13 -0800)]
scale: add gadgets for indicator/label in scale marks
This will allow us to theme them indepdendently, and specify a size for
the indicator from the theme.
Cosimo Cecchi [Sun, 28 Feb 2016 21:45:48 +0000 (13:45 -0800)]
scale: add a gadget for every mark
We want to add another gadget for the mark indicator. This will allow us
to do so.
Cosimo Cecchi [Mon, 29 Feb 2016 00:04:17 +0000 (16:04 -0800)]
Adwaita: add minimum size for marks
It's still suboptimal, because there's no way to control the size of the
indicator alone, but this does the job for now.
Cosimo Cecchi [Sun, 28 Feb 2016 22:52:14 +0000 (14:52 -0800)]
gadget: improve debug message
Cosimo Cecchi [Sun, 28 Feb 2016 18:00:15 +0000 (10:00 -0800)]
range: draw slider on top of all contents
This is so that e.g. the focus ring is drawn under the slider.
Cosimo Cecchi [Sun, 28 Feb 2016 17:23:14 +0000 (09:23 -0800)]
scale: implement rendering for marks gadgets
This completes the conversion of scale marks to gadgets.
Cosimo Cecchi [Sun, 28 Feb 2016 08:12:22 +0000 (00:12 -0800)]
scale: implement size allocate for mark gadgets
This allows to move the mark sections around with e.g. margins.
Cosimo Cecchi [Sat, 27 Feb 2016 23:24:32 +0000 (15:24 -0800)]
scale: port marks size request to gadgets
Cosimo Cecchi [Sat, 27 Feb 2016 23:08:04 +0000 (15:08 -0800)]
scale: use gadgets instead of nodes for mark containers
The gadget is not yet allocated though.
Cosimo Cecchi [Sat, 27 Feb 2016 21:48:19 +0000 (13:48 -0800)]
scale: rename function arguments
To make them clearer. No functional change here.
Cosimo Cecchi [Sat, 27 Feb 2016 21:44:22 +0000 (13:44 -0800)]
scale: remove unused argument
It's always GTK_POS_TOP.
Cosimo Cecchi [Sun, 28 Feb 2016 07:19:13 +0000 (23:19 -0800)]
range: better hack for GtkColorScale
Just draw the slider, since that is the only thing GtkColorScale cares
about.
Cosimo Cecchi [Sat, 27 Feb 2016 21:37:01 +0000 (13:37 -0800)]
range: deprecate gtk_range_get/set_min_slider_size()
Nothing uses these functions inside GTK anymore.
Cosimo Cecchi [Sat, 27 Feb 2016 21:31:26 +0000 (13:31 -0800)]
range: don't use gtk_range_set_min_slider_size()
The way this method is used from the GtkRange subclasses doesn't really
work well when the slider properties change as a consequence of e.g. a
style class being applied (e.g. the fine-tune style class).
In fact, there's no need to read the minimum slider size out of band,
and we can obtain the same result in a way that always work by setting a
private property on GtkRange.
Lapo Calamandrei [Thu, 25 Feb 2016 16:49:12 +0000 (17:49 +0100)]
Adwaita: some more WIP theme work for the new scale
Cosimo Cecchi [Wed, 24 Feb 2016 23:51:40 +0000 (15:51 -0800)]
gadget: simplify code
Cosimo Cecchi [Wed, 24 Feb 2016 23:35:28 +0000 (15:35 -0800)]
range: use border box for slider area
Since we can use negative margins, we should not use the margin box
for the slider area. Use the border box instead, since that's what is
typically mapped to the visible area.
Cosimo Cecchi [Wed, 24 Feb 2016 22:29:52 +0000 (14:29 -0800)]
range: use new GtkCssGadget API instead of rolling our own
Cosimo Cecchi [Wed, 24 Feb 2016 22:21:10 +0000 (14:21 -0800)]
gadget: add API to get various area boxes
Compared to the function returning the allocation, these will return the
box in gadget coordinates.
Cosimo Cecchi [Wed, 24 Feb 2016 21:53:13 +0000 (13:53 -0800)]
range: simplify code
Instead of directly accessing the widget allocation, we can use the
gadget API to test whether the coordinates are in the main gadget.
Lapo Calamandrei [Wed, 24 Feb 2016 21:36:14 +0000 (13:36 -0800)]
Adwaita: WIP for new range theme
Cosimo Cecchi [Wed, 24 Feb 2016 21:28:54 +0000 (13:28 -0800)]
range: add a gadget for the whole widget area
This commit introduces another node, called "contents", that holds the
main contents of the range. This allows for the main gadget itself to
span across the whole surface of the widget now.
Cosimo Cecchi [Wed, 24 Feb 2016 20:24:41 +0000 (12:24 -0800)]
scale: always add marks at the beginning or the end
Marks are always either the first or the last child of the scale.
Cosimo Cecchi [Wed, 24 Feb 2016 20:01:07 +0000 (12:01 -0800)]
range: use new GtkBoxGadget API instead of counting children
Cosimo Cecchi [Wed, 24 Feb 2016 20:00:46 +0000 (12:00 -0800)]
boxgadget: add APIs to insert gadgets next to siblings
Cosimo Cecchi [Wed, 24 Feb 2016 19:43:06 +0000 (11:43 -0800)]
range: use new GtkBoxGadget API instead of removing/inserting
Cosimo Cecchi [Wed, 24 Feb 2016 18:34:15 +0000 (10:34 -0800)]
boxgadget: add API to set expand/align flags for gadget child
Cosimo Cecchi [Tue, 23 Feb 2016 18:45:19 +0000 (10:45 -0800)]
range: move slider drawing where it belongs
The slider gadget is a child of the trough gadget, so draw it from
there.
Cosimo Cecchi [Tue, 23 Feb 2016 06:00:57 +0000 (22:00 -0800)]
scrollbar: deprecate min-slider-length style property
In favor of min-height/min-width, like we did for other similar
properties.
Cosimo Cecchi [Tue, 23 Feb 2016 05:31:31 +0000 (21:31 -0800)]
range: whitespace fix
Cosimo Cecchi [Tue, 23 Feb 2016 05:19:03 +0000 (21:19 -0800)]
range: remove border allocation hack
We can achieve the same result with a negative margin.
Cosimo Cecchi [Tue, 23 Feb 2016 03:08:09 +0000 (19:08 -0800)]
colorscale: don't use style properties to determine slider size
Cosimo Cecchi [Tue, 23 Feb 2016 02:54:24 +0000 (18:54 -0800)]
Revert "range: move GtkColorScale special case to GtkColorScale"
This reverts commit
d93d266ed9e3e26e382a4f6d4b5d4ea19eff3bcf.
Cosimo Cecchi [Tue, 23 Feb 2016 02:54:16 +0000 (18:54 -0800)]
Revert "range: simplify code"
This reverts commit
a74f7dcaf8a02c96c6bfecab6969e1d33ecb9332.
Cosimo Cecchi [Tue, 23 Feb 2016 02:28:30 +0000 (18:28 -0800)]
range: simplify code
Now that everything is in the main gadget, we can just let it propagate
drawing to its children.
Cosimo Cecchi [Tue, 23 Feb 2016 02:27:52 +0000 (18:27 -0800)]
range: move GtkColorScale special case to GtkColorScale
Now we can just tweak the node visibility for it.
Cosimo Cecchi [Tue, 23 Feb 2016 02:18:37 +0000 (18:18 -0800)]
range: remove special case that's not needed
We already set the gadget not to be visible in that case.
Cosimo Cecchi [Tue, 23 Feb 2016 02:11:02 +0000 (18:11 -0800)]
range: move slider inside the trough
This will require a rewrite of most of the theme, but it's the right
thing to do.
Cosimo Cecchi [Sun, 21 Feb 2016 23:01:04 +0000 (15:01 -0800)]
scale: deprecate slider-length style property
This can be achieved using min-height/min-width CSS properties now.
Cosimo Cecchi [Sun, 21 Feb 2016 08:33:36 +0000 (00:33 -0800)]
range: deprecate more style properties
These are never read now.
Cosimo Cecchi [Tue, 19 Jan 2016 09:22:33 +0000 (07:22 -0200)]
range: continue porting to GtkGadgets
This commit rewrites a lot of the GtkRange internals to make full use
of the gadget structure.
Cosimo Cecchi [Tue, 19 Jan 2016 09:21:46 +0000 (07:21 -0200)]
gadget: add hit test functions
These will be useful in later commits.
Cosimo Cecchi [Sun, 17 Jan 2016 19:27:03 +0000 (17:27 -0200)]
range: remove unused code
Cosimo Cecchi [Sun, 17 Jan 2016 19:24:01 +0000 (17:24 -0200)]
range: remove call that is not needed
gtk_range_calc_slider() already calls the same function when needed.
Cosimo Cecchi [Sun, 17 Jan 2016 00:44:50 +0000 (16:44 -0800)]
range: simplify code a bit
Cosimo Cecchi [Sun, 17 Jan 2016 00:30:59 +0000 (16:30 -0800)]
range: don't call gtk_range_calc_layout() in realize()
This should not be needed, and we want to get rid of
gtk_range_calc_layout().
Cosimo Cecchi [Sun, 17 Jan 2016 00:27:35 +0000 (16:27 -0800)]
range: deprecate arrow-scaling style property
This can be done with CSS now.
Cosimo Cecchi [Sun, 17 Jan 2016 00:27:24 +0000 (16:27 -0800)]
range: use newer GtkCssGadget API
Cosimo Cecchi [Wed, 13 Jan 2016 23:01:47 +0000 (15:01 -0800)]
range: deprecate trough-under-steppers
It's not clear what this would do in a CSS world, and all the themes set
it to TRUE anyway...
Cosimo Cecchi [Sat, 9 Jan 2016 22:00:09 +0000 (14:00 -0800)]
range: first pass at porting to gadgets
There's still a lot to be done, but this is functional and we'll improve
the loose ends in the next commits.
Matthias Clasen [Mon, 29 Feb 2016 18:16:50 +0000 (13:16 -0500)]
Move the level bar release note to the right section
Paolo Borelli [Mon, 29 Feb 2016 17:03:38 +0000 (18:03 +0100)]
win32: init wintab when the device manager is constructed
No need to call a method explicitely after creating the object